The present invention relates generally to the field of configuring logic instructions in automation devices, and more specifically to techniques for enabling multiple Boolean inputs and outputs for function blocks of automation devices.
Logic solving capability may be programmed into various sensor and actuator devices, such as input/output (I/O) devices, motor drives, relays, push buttons, and other automation devices to improve the performance of the devices and to enable limited but rapid response to automation needs without specific direction from a central automation controller. For example, such logic solving capability may control outputs and manage status information of the automation devices to control operation of other components directly or closely connected to the devices. The configuration of the logic solving capability may be accomplished through visual editing tools, which provide graphical interfaces for configuring functions blocks that encompass the local control functions for the devices. Such distributed control allows low-level devices to perform operations heretofore performed only by reference to logic in one or more network-connected automation controllers.
However, in some situations in existing automation devices, the function blocks may have constraints relating to the number of inputs and outputs. For example, a function block may be limited to only one input or only one output. One method for accommodating such limitations is to program the function block to generate the most frequently-used logic results. However, this type of bundled output may prove inconvenient in many situations and may not actually accommodate the type or granularity of control desired. For example, in certain situations, an end user program may only be interested in one or two bits of the bundled output. Therefore, a mask function block may be required to mask bits that are not needed.